Method and system for customized caller identification

ABSTRACT

A system and method for customized caller identification and call routing are disclosed. A disclosed method of providing customized caller identification information for a phone call includes associating a first phone number in a database with a plurality of user specified identifications, selecting one of the plurality of user specified identifications in response to the phone call placed from the first phone number to a second phone number as a function of the second phone number, and providing the selected one of the plurality of identifications to a device associated with the second telephone number.

The disclosure claims the filing-date benefit of Provisional ApplicationNo. 60/734,783, filed 9 Nov. 2005, the specification of which isincorporated herein in its entirety.

FIELD OF THE INVENTION

The present disclosure relates generally to systems and methodsinvolving associations between identifiers corresponding to a partyinitiating a communication and a party receiving the communication.

BACKGROUND

Caller name information is often centrally maintained on the PublicSwitched Telephone Network (PSTN) in a Caller Name (CNAM) database. Theability for a customer to override the listed caller information islimited to the local processing capability of the customer's telephone.For instance, a phone with speed dial memory or a built-in phone bookmay display the information from the phonebook entry corresponding tothe phone number of the calling party. With the use of smart phones orprogrammable phones which maintain a phone book, the calling number canbe associated with a name in the phone book such that the calling partycan be identified by name. This only works, however, on devices socapable and programmed. Moreover, while such functionality is commonlyavailable on smart cellular phones, it is not typically available on a“Plain Old” Telephone Service (POTS) phone.

For example, when customer A calls customer B, the PSTN accesses theCNAM database to provide the calling number or identity of customer A tocustomer B's phone. In the case where customer A calls customer B, hismother, customer B may have a mobile phone programmed with a local phonebook that associates caller A's phone number as “Son.” When the CNAMdatabase provides caller A's phone number to customer B's phone, thephone will identify “Son” as associated with caller A's phone number anddisplay “Son” to customer B. Having a phone programmed to associate thecalling number with the identity of the caller suffers from severaldisadvantages. For example, the identification of caller A's phonenumber with “Son” must occur on each phone individually used by customerB, and thus requires that each phone desired to display the caller ID bespecially programmed. By way of another example, if customer B loses theprogrammed phone or the phone ceases operating properly, customer B mustentirely re-program a new phone to identify the calling parties.

SUMMARY

Various disclosed embodiments are generally directed to a system andmethod of providing customized caller identification information when acaller associated with a first identifier calls a user associated with asecond identifier including associating the first identifier in adatabase with a plurality of user specified identifications, selectingone of the plurality of user specified identifications in response to acall placed from the first identifier to the second identifier, andproviding the selected one of the plurality of identifications to theuser associated with the second identifier. Thus, customized calleridentification can be provided to the user of even a conventional phonewithout requiring preprogramming of the phone.

Further, various disclosed embodiments are generally directed to asystem and method of routing calls in a telephone network includingmaintaining a database of a plurality of phone numbers, associating afirst phone number with a second phone number in the database, providinga user selected call routing instruction for each associated pair offirst and second phone numbers, and routing a phone call from the firstphone number to a third phone number using the selected call routinginstruction.

Other systems, methods, features, and advantages of the presentdisclosure will be or become apparent to one with skill in the art uponexamination of the following drawings and detailed description. It isintended that all such additional systems, methods, features, andadvantages be included within this description, be within the scope ofthe present disclosure, and be protected by the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

Various aspects of the present disclosure will be or become apparent toone with skill in the art by reference to the following detaileddescription when considered in connection with the accompanyingexemplary non-limiting embodiments, wherein:

FIG. 1 illustrates an example of customized identification selection;

FIGS. 2 a-c are further illustrations of customized identifications;

FIG. 3 illustrates an example of customized routing;

FIG. 4 is a schematic representation of an embodiment of the presentdisclosure; and

FIG. 5 is a flow chart representing an exemplary process.

DETAILED DESCRIPTION

One aspect of the present disclosure includes providing customizedcaller identification information. Another aspect includes cachingcaller ID information. In yet another aspect, a user management systemis provided. In a further aspect of the present disclosure, customizedrouting of a call is provided.

In one aspect, a caller information system is provided to return dataincluding, but not limited to, caller ID information, customizedidentifiers, or routing information based on the relationship betweenthe calling and called parties. The customized identifiers include, butare not limited to a name, a nickname, a relationship identifier(mother, father, son, daughter, etc.), and a group identifier (family,college, company, service provider, team, etc.). Routing information,discussed in greater detail below, includes, but is not limited toinformation to route a communication to a party, device, port, address,or application different from that originally requested.

Optionally, the caller information system is utilized when a callercalls a VoIP enabled device. The caller information system retrieves thecaller identification information from the CNAM database using queries(including, but not limited to an SS7 query) and provides the caller IDto the called VoIP device.

Through the caller information system, an end-user of a caller IDcapable device obtains user-customized versions of caller informationrather than, or in addition to, information reflected in a CNAM orsimilar information service.

For example, traditionally, a CNAM database will provide theidentification of the phone number of the calling party to the calledparty. In the present disclosure, the identification or number of thecalling party is used to identify the set of customized identificationsassociated with the calling party. The identification of the calledparty can then be used to select from one of the set of customizedidentifications for display to the called party.

FIG. 1 illustrates an example of customized identification selection. Inthis particular example, the calling party 101 has several customizedidentifications 103, 105, 107 associated therewith. The selection ofcustomized identifications 103, 105, 107 depends on the called party.For example, when the calling party 101 calls Party 1, Party 1's displayreads “Mom” 103. This corresponds to a situation where the calling party101 is Party 1's mother. Alternatively, upon calling Party 2, Party 2'sdisplay reads “Mary” 105. This corresponds to a situation where thecalling party 101 is Party 2's peer or friend. Further, upon callingParty 3, Party 3's display reads “Aunt Mary” 107, corresponding to asituation where the calling party 101 is Party 3's aunt. Alternatively,the calling party may choose to provide no or a scrambled/anonymizedcustomized identifier when calling a party not on a predetermined list.The calling party 101 optionally manages the various customizedidentifications 103, 105, 107 and associations with parties and/or phonenumbers through a user management system, which is discussed in greaterdetail elsewhere in the disclosure.

In another aspect, a cache database is maintained to store caller IDinformation retrieved from an external database such as a CNAM database.Typically, there is a charge associated with each lookup query for theCNAM database. To avoid the charges, a cache of previous CNAM lookupscan be maintained and utilized to provide customized ID information. Thecache database is optionally accessed by the caller information systemfor subsequent calls to the VoIP phone from the same caller. Thusredundant or frequent lookups to the CNAM database, and the associatedcharges, for the same caller can be reduced.

In yet another aspect, a user management system is provided to enable auser to manage relationships and custom calling information and routing.Optionally, the user management system includes a user contacts databasein which to record customized identification and routing informationaccording to relationships between parties.

FIGS. 2 a-c illustrate additional examples of customized identificationsin operation. In a selected embodiment, caller A's phone number (ororiginating device 201 a) is associated with B (or called number B) toprovide customized information. In the depicted examples, theassociation between the numbers reflects the parties' familyrelationship. In certain embodiments, a user contacts database ismaintained to identify caller A as “Son” on the display of B's phone 203a. Alternatively, when B calls A, B is identified as “Mother” on A'sdevice 201 b. The user contacts database optionally stores multiplerelationships for a single phone number, device, or user account. Forexample, A may be associated with a number for C, his sister, in theuser contacts database. Upon calling C, A is identified as “BrotherJohn” on C's device 205 c.

Although FIGS. 2 a-c illustrate examples of outbound customizedidentifiers, it is noted that select embodiments also provide inboundcustomized identifiers. For example, a caller may provide customizedidentifiers for incoming calls to replace, alter, or augment receivedcaller information.

It is noted that the associations or relationships among parties areoptionally based on a variety of identifiers. These identifiers include,but are not limited to, phone numbers, IP addresses, email addresses,device addresses, usernames, account identifiers, and party names.

Further, it is noted that the associations may exist or be identifiedamong a variety of such identifiers to accomplish various degrees ofcustomization. For example, a party's account identifier may be directlyassociated with the account identifier of another party, so anycommunication between phone numbers or devices associated with therespective accounts initiates a customized caller identification oraction including, but not limited to, customized routing.

Alternatively, embodiments provide customization at lower levels ofgranularity. For example, a customized caller identification or routingmay be provided upon sending or receiving a particular type ofcommunication (for example, a voice call) from a party's particulardevice (for example, a POTS phone) associated with a particular phonenumber (for example, home). Alternatively, caller identification orrouting may be customized within a user account based upon sending orreceiving an SMS from a mobile phone associated with a business phonenumber. Additional variations among the identifiers, devices, andcommunication types are also accommodated. Customization at lower levelsof granularity can allow, for instance, particular types of customizedidentifiers to reach a called party's particular device or enableautomatic routing of a communication and customized identifier to acapable and/or preferred device of the called party.

Rather than relying only on the information delivered from the PSTN orCNAM database, various embodiments described herein enable individualcustomers to specify more descriptive and/or corrected caller name andnumber information.

By implementing custom caller information services in the network,subscriber devices are capable of using these features without relianceon per-device “phonebook” or caller information. Caching of caller nameinformation and storing custom identifiers can save costs sincesubscriber-provided caller-name information can be used in lieu ofmaking a query to an external CNAM database which carries aper-transaction cost.

In selected embodiments, user-specified caller information obviates thenecessity of requiring a lookup from the CNAM database. In otheralternative embodiments, not all paired relationships from the usermanagement system are provided to the caller information system and maybe stored in the cache database to avoid frequent lookups in the usercontacts database.

Further, the user management system and cache database are of use whenreceiving international calls and calls from mobile numbers. In thesesituations, a traditional CNAM or ISDN-PRI lookup may return anincorrect number or no number at all.

In a further aspect, a user can also specify information related to therouting of phone calls as a function of the calling party. In selectedembodiments, a specific forwarding policy may be implemented whichreplaces the original number being called. For example, as shown in FIG.3, a user associated with called number A 301 (the user at A) canspecify that a phone call from Calling Party 1 (phone number B) beforwarded to number/device A′ 303 upon receipt of Calling Party's call.Alternatively, the user at A can specify that a call from Calling Party2 (phone number C) be forwarded to “mobile phone” A″ 305 upon receipt ofCalling Party 2's call. Optionally, the user at A can set up adaisy-chained ringing scheme 309 in which a call from Calling Party 3first rings the “home” number 307, then the “mobile phone” 305, and thenthe “business phone” 303 in sequence. Alternatively, any subset of thesedevices may be rung simultaneously, with the call connected to thereceiving device at which the called party first answers.

In yet another alternative, the customized routing can be effectuated asa function of the calling party's caller identification or the callingparty's customized identifier. Optionally, the customized routing can beeffectuated as a function of a part of the customized identification.

For example, a called party may select to have incoming calls to thecalled party's home phone number exhibiting customized calleridentifiers “Dad's office” and “Mom's office” forwarded the calledparty's business phone. In another example, the called party mayoptionally select to have incoming calls to the called party's homephone number exhibiting customized identifiers “Dad's ______” forwardedto the called party's mobile phone, where “______” denotes that theportion of the identifier after “Dad's” is not used in effectuatingcustomized routing. The relevant portion of the customized identifiermay be in any portion of the displayed identifier, or in a portion whichis not displayed, such as a metadata tag.

In yet another example, where the displayed customized identifiers“Mom's mobile” and “Dad's mobile” and “Brother John's home” also includea group identifier (for example, a customized identifier denoting a“family” relation), all similar customized identifiers may beselectively routed to a particular number or device, such as the calledparty's home phone number. Alternatively, if the received customizedidentifier is not recognized (for instance, no data or not included in apreferred list of contacts), the caller may be automatically routed to avoice mail service or automated message describing that the call cannotbe accepted. In addition to being input or managed by a called party,group and other customized identifiers may be associated with buddylists, preferred caller lists, or identify the caller's serviceprovider. Accordingly, a called party may select customized routing ofgroups of known and unknown possible calling parties.

Although FIG. 3 illustrates an example of customized inbound routing, itis noted that select embodiments enable a caller to customize outboundrouting of communications. For example, a calling party can customizedaisy-chain and simultaneous ringing schemes for a particular calledparty.

Further, selected embodiments provide a database (or databases) ofassociated phone numbers and allows customer specific informationrelating to call routing, caller identification and other enhancementsto be stored and accessed as function of the association between thephone numbers of the called and calling parties. In addition torecording user's proactive customizations, selected embodiments applylearning logic to the database to recognize calling behavior patterns.These patterns are optionally used to suggest to users incentives suchas preferred calling plans among frequently called numbers or a changein plan to reduce the user's subscription cost according to past usepatterns including, but not limited to, call times, call costs, and calldistances.

In another example, a caller on the PSTN calls a VoIP customer. Throughvarious disclosed embodiments, the PSTN caller's information can beupdated on a per-user basis, customized by the end user. Further, theVoIP customer can provide a customized version of the caller name stringas an alternative to the one provided in the ISDN signaling message, orto the one returned via an SS7 dip to an external CNAM database.Alternatively, the VoIP customer may also specify a replacement for thecalling number as well. This replacement is useful, for instance, if theVoIP customer wants to use the “call back” feature in a caller-IDenabled phone and knows that the PSTN caller prefers an alternativenumber over the number from which the call was received.

FIG. 4 illustrates a schematic representation of an embodiment of thepresent disclosure. In a non-limiting exemplary embodiment:

-   -   A represents caller's the actual DID telephone number;    -   B represents the number that was called;    -   ID represents the Caller name string obtained from CNAM or the        cache;    -   ID′ represents the customized Caller name string;    -   A′ represents the customized caller number delivered to        telephone being called; and    -   B′ represents actual number call will be delivered to.

In this example, a PSTN user with a phone 415 connected to switch (CLS)401, with Direct Inward Dialing (DID) number A calls a VoIP subscriberat phone number B over the PSTN 400. Caller ID with name signaling tonesgenerated by VoIP telephone adapter (TA) 407 transmit the caller'sdelivered phone number A′ and customized name string ID′ to phone 408.

A′ may be defined to be A, with the ID discovered via ISDN-Primary-RateInterface (PRI) signaling. Alternatively, a CNAM lookup is performedfrom caller information system 410 using a SS7 query over SS7 transport411 to CNAM database provider 409, thereby returning (and optionallycaching) the information ID in database 412.

In an optional optimization, the caller information system 410 consultsa local cache database 412 to reduce the frequency of lookups to CNAMdatabase. Caller information system also optionally consults the usermanagement system 413 by making a query, passing both A and Bidentifiers. The user management system 413 queries a user contactdatabase 414 with A and B to identify customer specific informationstored therein for the pair A, B. In selected embodiments, the lookupreturns user-specified name information ID′ as well as an alternativeidentifying calling number A′. Optionally, alternative calling number A′enables returned calls to be automatically directed to an alternativenumber. Further, alternative destination number B′ may be returned toaffect per-caller forwarding or other customized treatment. In theillustrated example, all information is returned to caller informationsystem 410 where it may be cached in the cache database 412.Alternatively, the caller information system 410 may selectively discardor alter the received custom data to be cached in accordance with atleast storage constraints, database relationship structure, and queryspeed optimization.

The caller information system 410 returns the results of the query forcaller name information to a Session Initialization Protocol (SIP) proxy405. The SIP call processing elements 405, 406 optionally update thesignaling information according to policy to include the new callednumber, caller number and caller name information. The call is thensignaled to VoIP TA 407. This signal includes, but is not limited to, aSIP INVITE signal.

Consequently, the VoIP TA 407 rings telephone 408, and passes customizedcaller ID information using standard caller-ID signaling tones totelephone 408 containing calling number A′ and the customized callername ID′.

Further, although the described operational example relates to acommunication from the PSTN to a VoIP subscriber, alternate embodimentsprovide for a customized identifier and/or customized routing forVoIP-to-PSTN and VoIP-to-VoIP communications.

The subscriber obtaining service using TA 407 and telephone 408 canquery, update, and maintain the subscriber's own customized callerinformation or routing in user contacts database 414 using a variety ofmethods, including a web/http interface or a customized clientapplication. Using any one of these methods, the user can also specifyreplacement numbers and names for known callers.

In selected embodiments, the customized delivered caller number A′and/or customized caller name ID′ is a customized identifier including,but not limited to, alphanumeric text, a graphic, a sound, a song, aring tone, or a video. Further examples of these customized identifiers,such as relational text, are described above. The customized identifiersare optionally set by a user through the user management system 413. Inaddition to being directly delivered to a called party or device, anidentifier may be retrieved by the receiving device from local ornetworked storage (for instance, the user contact database 414) using apointer (for instance, a URL) delivered to the VoIP TA 407 or capablephone devices 408.

Further, selected embodiments apply to image or video communications,such as video phones. For example, in addition or instead of analphanumeric text string, a customized caller identifier for videochatting may include an avatar or thumbnail image of a caller to bepresented to the called party. Such image-based identifiers may also beused in connection with a standard voice call if the receiving/calleddevice, for instance a mobile phone with LCD, is capable of displayingan image or video.

Certain embodiments interface with Wireless Caller Name (WCNAM) deliveryservices in addition to traditional CNAM databases. Moreover, with thecache database 212, selected embodiments provide validation (or indicatea validated entry) that caller information corresponds to true caller orcaller's number. For instance, a user may discriminate against aconcealed telemarketer based on an indicator denoting a lack ofcorrespondence between a number in the cache database versus a numberretrieved from a CNAM for a given calling party.

Optionally, the custom user contact database 414 is synchronized,imported/exported from, or otherwise associated with a VoIP subscriber'scontacts in a personal information management (PIM) program, a socialnetworking site, or an instant messaging (IM) “buddy” list. Further, theuser management system 413 and associated services may notify selectedsubscribers, contacts, or “buddies” of an updated phone number or otherchanged contact information.

Furthermore, selected embodiments enable selective blocking/acceptancebased on caller ID. Alternatively, embodiments provide an inboundcustomization override capability enabling a called party to selectivelyoverride a calling party's customized identifier. For example, a callermay choose to disable or replace a calling party's customizedidentifier, such as an animation or sound. Optionally, permissions areset for displaying information to parties outside those associated withthe subscriber in the user contacts database 414. Further, selectedembodiments indicate whether the caller is within a preferred network(will use peak minutes, international, incoming collect call, etc.) toallow receiving party to discriminate whether to pick up a call andpossibly incur charges.

Various embodiments provide a customized caller identification system onthe network level rather than on the individual phone level. Thecustomized identifier of a caller is thereby provided to allconventional caller ID phones and not just specially programmed phones.Further, by embedding this capability in the telephone network callprocessing, the capability is now commonly available to any Caller-IDwith Name capable devices. Accordingly, various embodiments providesubstantial commercial value through cost savings and providing uniquecapabilities not otherwise available.

FIG. 5 illustrates a flow-chart example of a customized identificationprocess according to a disclosed embodiment. In FIG. 5, a first phonenumber is associated with user specified identifications S501. Asdiscussed previously, examples of a phone number and other identifiersincludes, but is not limited to, phone numbers, IP addresses, emailaddresses, device addresses, usernames, account identifiers, and partynames. Further, user specified identifications include, but are notlimited to, alphanumeric text, a graphic, a sound, or a video.

In response to a phone call placed from the first phone number to thesecond phone number, one of the user-specified identifications isselected as a function of the second phone number S503. As describedabove, the relationships on which this selection is based includes thenumerous possible variations among the identifiers, devices, andcommunication types. For example, the selection can alternatively bemade on the basis of an account of a called party, a called party'sparticular device, IP address, or phone number, or even whether thecommunication is simply voice or voice combined with video.

The selected identification is then provided to the user of the secondtelephone number S505. As also described above, providing the selectedidentification may involve either direct delivery or delivery of apointer to the selected identifier.

Process descriptions or blocks in flow charts should be understood asrepresenting modules, segments, or portions of computer software or codewhich include one or more executable instructions for implementingspecific logical functions or steps in the process, and alternateimplementations (including implementations without a computer) areincluded within the scope of the preferred embodiment of the presentdisclosure in which functions may be executed out of order from thatshown or discussed, including substantially concurrently or in reverseorder, depending on the functionality involved, as would be understoodby those reasonably skilled in the art of the present disclosure.

It should be emphasized that the above-described embodiments,particularly any “preferred” embodiments, are merely possible examplesof implementations, merely set forth for a clear understanding of theprinciples of the disclosure. Many variations and modifications may bemade to the above-described embodiments of the disclosure withoutdeparting substantially from the spirit and principles of thedisclosure. All such modifications and variations are intended to beincluded herein within the scope of this disclosure and the presentdisclosure and protected by the following claims.

The embodiments disclosed herein for providing caller information androuting can be implemented using computer usable medium having acomputer readable code executed by special purpose or general purposecomputers.

1. A method of providing customized caller identification informationfor a phone call, comprising: (a) associating a first phone number witha plurality of user specified identifications; (b) selecting one of theplurality of user specified identifications in response to the phonecall placed from the first phone number to a second phone number as afunction of the second phone number; and (c) providing the selected oneof the plurality of identifications to a device associated with thesecond telephone number.
 2. The method of claim 1 wherein the step ofassociating is performed in a database and the database is located in alocation remote from the user.
 3. The method of claim 1, furthercomprising: (d) displaying text corresponding to the selected one of theplurality of identifications.
 4. The method of claim 1, furthercomprising: (d) displaying an image corresponding to the selected one ofthe plurality of identifications.
 5. The method of claim 1, furthercomprising: (d) providing an audible tone corresponding to the selectedone of the plurality of identifications.
 6. The method of claim 1,further comprising: (d) providing a video corresponding to the selectedone of the plurality of identifications.
 7. A method of routing a callwhen a caller at a first phone number calls a user at a second phonenumber comprising: (a) associating the first phone number with acustomized routing instruction selected by the user and a customizedidentifier selected by the caller, the customized routing instructionincluding a third phone number; (b) selecting the third phone number inresponse to a phone call placed from the first phone number to thesecond phone number as a function of the customized identifier; and (c)routing the phone call from the first phone number to the third phonenumber.
 8. The method of claim 7 further comprising modifying the callrouting instruction for a selected associated pair of first and secondphone numbers.
 9. The method of claim 7, further comprising: (d) routingthe phone call from the third phone number to a fourth phone numberusing the selected call routing instruction.
 10. The method of claim 9,further comprising: (e) routing the phone call from the third phonenumber to a fourth phone number after a predetermined time.
 11. Themethod of claim 7, further comprising: (d) routing the phone call fromthe first phone number to at least a third phone number and a fourthphone number simultaneously.
 12. The method of claim 11, furthercomprising: (e) detecting a channel opening at a terminal device; and(f) completing the phone call to the terminal device.
 13. A computerprogram product for use with a device on a communications network, saidcomputer program product comprising: a computer usable medium havingcomputer readable program code modules embodied in said medium forproviding customized caller identification information for a phone call;computer readable first program code module for causing a computer toassociate a first phone number with a plurality of user specifiedidentifications; computer readable second program code module forcausing the computer to select one of the plurality of user specifiedidentifications in response to the phone call placed from the firstphone number to a second phone number as a function of the second phonenumber; and computer readable third program code module for causing acomputer to provide the selected one of the plurality of identificationsto a device associated with the second telephone number.
 14. A method ofstoring customized action information for a communication, comprising:receiving a first communications identifier; receiving at least onesecond communications identifier; storing an association between thefirst communications identifier and the at least one secondcommunications identifier; and storing action information correspondingto the association, the action information including a customidentification.